Get a free quote Complete the following three steps to receive your free quote! My door model Build it online before requesting your quote or describe your door or opener model. Door or opener description {"code":"UNHANDLED_EXCEPTION","message":"Invalid character after parsing property name. Expected ':' but got: %. Path '[0].width', line 1, position 97.","target":null,"details":[],"innerError":null,"stackTrace":" at Newtonsoft.Json.JsonTextReader.ParseProperty()n at Newtonsoft.Json.JsonTextReader.ParseObject()n at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)n at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)n at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)n at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)n at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)n at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)n at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)n at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)n at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)n at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)n at Garaga.ProductConfigurator.Api.Controllers.DesignCenter.DescriptionsController.Get(String designs, String language) in /garaga/Garaga.ProductConfigurator.Api/Controllers/DesignCenter/DescriptionsController.cs:line 32n at lambda_method18898(Closure, Object, Object[])n at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()n--- End of stack trace from previous location ---n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()n--- End of stack trace from previous location ---n at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)n at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)n at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)n at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync()n--- End of stack trace from previous location ---n at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)n at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)n at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)n at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)n at Garaga.ProductConfigurator.Api.Infrastructure.ApplicationBuilderExtensions.<>c.<<FallbackOnIndexForPathNotFound>b__0_0>d.MoveNext() in /garaga/Garaga.ProductConfigurator.Api/Infrastructure/ApplicationBuilderExtensions.cs:line 12n--- End of stack trace from previous location ---n at Microsoft.AspNetCore.ResponseCaching.ResponseCachingMiddleware.Invoke(HttpContext httpContext)n at Garaga.ProductConfigurator.Api.Infrastructure.ExceptionHandlingMiddleware.Invoke(HttpContext context) in /garaga/Garaga.ProductConfigurator.Api/Infrastructure/ExceptionHandlingMiddleware.cs:line 26"} My name and location First Name Last Name Zip/Postal Code My choice of communication Email Email Phone Check here if you agree to receive emails from Garaga about its products, future offers or promotions. Leave this field blank